home *** CD-ROM | disk | FTP | other *** search
- % ISO DOCUMENT STYLE <17 Oct 88>
- % for LaTeX version 2.09
-
- % @(#)iso9.sty 1.15 dated 88/10/19 at 13:46:58
-
- % This file is based on Leslie Lamport's art10.doc.
-
- % ****************************************
- % * FONTS *
- % ****************************************
- %
-
- \lineskip 1pt % \lineskip is 1pt for all font sizes.
- \normallineskip 1pt
- \def\baselinestretch{1}
-
- % Each size-changing command \SIZE executes the command
- % \@setsize\SIZE{BASELINESKIP}\FONTSIZE\@FONTSIZE
- % where:
- % BASELINESKIP = Normal value of \baselineskip for that size. (Actual
- % value will be \baselinestretch * BASELINESKIP.)
- %
- % \FONTSIZE = Name of font-size command. The currently available
- % (preloaded) font sizes are: \vpt (5pt), \vipt (6pt),
- % \viipt (etc.), \viiipt, \ixpt, \xpt, \xipt, \xiipt,
- % \xivpt, \xviipt, \xxpt, \xxvpt.
- % \@FONTSIZE = The same as the font-size command except with an
- % '@' in front---e.g., if \FONTSIZE = \xivpt then
- % \@FONTSIZE = \@xivpt.
- %
- % For reasons of efficiency that needn't concern the designer,
- % the document style defines \@normalsize instead of \normalsize . This is
- % done only for \normalsize, not for any other size-changing commands.
-
- \def\@normalsize{\@setsize\normalsize{10pt}\ixpt\@ixpt
- \abovedisplayskip 10pt plus2pt minus5pt%
- \belowdisplayskip \abovedisplayskip
- \abovedisplayshortskip \z@ plus3pt%
- \belowdisplayshortskip 6pt plus3pt minus3pt}
-
- \def\small{\@setsize\small{9pt}\viiipt\@viiipt
- \abovedisplayskip 8.5pt plus 3pt minus 4pt%
- \belowdisplayskip \abovedisplayskip
- \abovedisplayshortskip \z@ plus2pt%
- \belowdisplayshortskip 4pt plus2pt minus 2pt
- \def\@listi{\topsep 4pt plus 2pt minus 2pt\parsep 2pt plus 1pt minus 1pt
- \itemindent\leftmargini\itemsep \parsep}}
-
- \def\footnotesize{\@setsize\footnotesize{9pt}\viiipt\@viiipt
- \abovedisplayskip 6pt plus 2pt minus 4pt%
- \belowdisplayskip \abovedisplayskip
- \abovedisplayshortskip \z@ plus 1pt%
- \belowdisplayshortskip 3pt plus 1pt minus 2pt
- \def\@listi{\topsep 3pt plus 1pt minus 1pt\parsep 2pt plus 1pt minus 1pt
- \itemindent\leftmargini\itemsep \parsep}}
-
- \def\scriptsize{\@setsize\scriptsize{8pt}\viipt\@viipt}
- \def\tiny{\@setsize\tiny{6pt}\vpt\@vpt}
- \def\large{\@setsize\large{11pt}\xpt\@xpt}
- \def\Large{\@setsize\Large{12pt}\xipt\@xipt}
- \def\LARGE{\@setsize\LARGE{20pt}\xviipt\@xviipt}
- \def\huge{\@setsize\huge{25pt}\xxpt\@xxpt}
- \def\Huge{\@setsize\Huge{30pt}\xxvpt\@xxvpt}
-
- \normalsize % Choose the normalsize font.
-
-
- % ****************************************
- % * PAGE LAYOUT *
- % ****************************************
- %
- % All margin dimensions measured from a point one inch from top and side
- % of page.
-
- % SIDE MARGINS:
- \if@twoside % Values for two-sided printing (the default):
- \oddsidemargin -32pt % Left margin on odd-numbered pages.
- \evensidemargin -32pt % Left margin on even-numbered pages.
- \marginparwidth 107pt % Width of marginal notes (none in BSI standards).
- \else % Values for one-sided printing:
- \oddsidemargin -23pt % Note that \oddsidemargin = \evensidemargin
- \evensidemargin -23pt
- \marginparwidth 90pt
- \fi
- \marginparsep 11pt % Horizontal space between outer margin and
- % marginal note
-
-
- % VERTICAL SPACING:
- % Top of page:
- \topmargin -54pt % Nominal distance from top of page to top of
- % box containing running head.
- \headheight 25pt % Height of box containing running head.
- \headsep 39pt % Space between running head and text.
- % \topskip = 10pt % '\baselineskip' for first line of page.
- % Bottom of page:
- \footskip 27pt % Distance from baseline of box containing foot
- % to baseline of last line of text.
-
-
- % DIMENSION OF TEXT:
-
- \textheight 240mm
- \textwidth 180mm % Width of text line.
- % For two-column mode:
- \columnsep 10mm % Space between columns
- \columnseprule 0pt % Width of rule between columns.
-
- % A \raggedbottom command causes 'ragged bottom' pages: pages set to
- % natural height instead of being stretched to exactly \textheight.
-
- % FOOTNOTES:
-
- \footnotesep 6.65pt % Height of strut placed at the beginning of every
- % footnote = height of normal \footnotesize strut,
- % so no extra space between footnotes.
-
- \skip\footins 9pt plus 4pt minus 2pt % Space between last line of text and
- % top of first footnote.
-
- % FLOATS: (a float is something like a figure or table)
- %
- % NDN: I haven't changed the float parameters for the iso style
- %
- % FOR FLOATS ON A TEXT PAGE:
- %
- % ONE-COLUMN MODE OR SINGLE-COLUMN FLOATS IN TWO-COLUMN MODE:
- \floatsep 12pt plus 2pt minus 2pt % Space between adjacent floats moved
- % to top or bottom of text page.
- \textfloatsep 20pt plus 2pt minus 4pt % Space between main text and floats
- % at top or bottom of page.
- \intextsep 12pt plus 2pt minus 2pt % Space between in-text figures and
- % text.
- \@maxsep 20pt % The maximum of \floatsep,
- % \textfloatsep and \intextsep (minus
- % the stretch and shrink).
- % TWO-COLUMN FLOATS IN TWO-COLUMN MODE:
- \dblfloatsep 12pt plus 2pt minus 2pt % Same as \floatsep for double-column
- % figures in two-column mode.
- \dbltextfloatsep 20pt plus 2pt minus 4pt % \textfloatsep for double-column
- % floats.
- \@dblmaxsep 20pt % The maximum of \dblfloatsep and
- % \dbltexfloatsep.
-
- % FOR FLOATS ON A SEPARATE FLOAT PAGE OR COLUMN:
- % ONE-COLUMN MODE OR SINGLE-COLUMN FLOATS IN TWO-COLUMN MODE:
- \@fptop 0pt plus 1fil % Stretch at top of float page/column. (Must be
- % 0pt plus ...)
- \@fpsep 8pt plus 2fil % Space between floats on float page/column.
- \@fpbot 0pt plus 1fil % Stretch at bottom of float page/column. (Must be
- % 0pt plus ... )
-
- % DOUBLE-COLUMN FLOATS IN TWO-COLUMN MODE.
- \@dblfptop 0pt plus 1fil % Stretch at top of float page. (Must be 0pt plus ...)
- \@dblfpsep 8pt plus 2fil % Space between floats on float page.
- \@dblfpbot 0pt plus 1fil % Stretch at bottom of float page. (Must be
- % 0pt plus ... )
- % MARGINAL NOTES:
- %
- \marginparpush 5pt % Minimum vertical separation between two marginal
- % notes.
-
-
- % ****************************************
- % * PARAGRAPHING *
- % ****************************************
- %
- \parskip \baselineskip % Extra vertical space between paragraphs.
- \parindent 0pt % Width of paragraph indentation.
- \topsep 0pt plus 1pt minus 1pt % Extra vertical space, in addition to
- % \parskip, added above and below list and
- % paragraphing environments.
- \partopsep 2pt plus 1pt minus 1pt % Extra vertical space, in addition to
- % \parskip and \topsep, added when user
- % leaves blank line before environment.
- \itemsep 2pt plus 1pt minus 1pt % Extra vertical space, in addition to
- % \parskip, added between list items.
-
- % The following page-breaking penalties are defined
- % NDN: unchanged from art10.doc
-
- \@lowpenalty 51 % Produced by \nopagebreak[1] or \nolinebreak[1]
- \@medpenalty 151 % Produced by \nopagebreak[2] or \nolinebreak[2]
- \@highpenalty 301 % Produced by \nopagebreak[3] or \nolinebreak[3]
-
- \@beginparpenalty -\@lowpenalty % Before a list or paragraph environment.
- \@endparpenalty -\@lowpenalty % After a list or paragraph environment.
- \@itempenalty -\@lowpenalty % Between list items.
-
- % \clubpenalty % 'Club line' at bottom of page.
- % \widowpenalty % 'Widow line' at top of page.
- % \displaywidowpenalty % Math display widow line.
- % \predisplaypenalty % Breaking before a math display.
- % \postdisplaypenalty % Breaking after a math display.
- % \interlinepenalty % Breaking at a line within a paragraph.
- % \brokenpenalty % Breaking after a hyphenated line.
-
-
- % ****************************************
- % * SECTIONS *
- % ****************************************
- %
-
- % NDN: note that section names have changed from the usual LaTeX ones.
-
- % \secdef{UNSTARCMDS}{STARCMDS} :
- % When defining a sectionioning command without using
- % \@startsection, you can use \secdef as follows:
- % \def\part { ... \secdef \CMDA \CMDB }
- % \def\CMDA [#1]#2{ ... } % Command to define \part[...]{...}
- % \def\CMDB #1{ ... } % Command to define \part*{...}
-
- % NDN: I haven't considered parts for the iso style yet, so this is just
- % as in art10.doc.
- \def\part{\par % New paragraph
- \addvspace{4ex} % Adds vertical space above title.
- \@afterindentfalse % Suppresses indent in first paragraph. Change
- \secdef\@part\@spart} % to \@afterindenttrue to have indent.
-
- \def\@part[#1]#2{\ifnum \c@secnumdepth >\m@ne % IF secnumdepth > -1
- \refstepcounter{part} % THEN step part counter
- \addcontentsline{toc}{part}{\thepart % add toc line
- \hspace{1em}#1}\else % ELSE add unnumbered line
- \addcontentsline{toc}{part}{#1}\fi % FI
- { \parindent 0pt \raggedright
- \ifnum \c@secnumdepth >\m@ne % IF secnumdepth > -1
- \Large \bf Part \thepart % THEN Print 'Part' and
- \par \nobreak % number in \Large boldface.
- \fi % FI
- \huge \bf % Select \huge boldface.
- #2\markboth{}{}\par } % Print title and set heading marks null.
- \nobreak % TeX penalty to prevent page break.
- \vskip 3ex % Space between title and text.
- \@afterheading % Routine called after part and
- } % section heading.
-
- % Heading for \part* command
- \def\@spart#1{{\parindent 0pt \raggedright
- \huge \bf
- #1\par} % Title.
- \nobreak % TeX penalty to prevent page break.
- \vskip 3ex % Space between title and text.
- \@afterheading % Routine called after part and
- } % section heading.
-
- % \@startsection {NAME}{LEVEL}{INDENT}{BEFORESKIP}{AFTERSKIP}{STYLE}
- % optional * [ALTHEADING]{HEADING}
- % Generic command to start a section.
- % NAME : e.g., 'clause'
- % LEVEL : a number, denoting depth of section -- i.e., section=1,
- % clause = 2, etc. A section number will be printed if
- % and only if LEVEL < or = the value of the secnumdepth
- % counter.
- % INDENT : Indentation of heading from left margin
- % BEFORESKIP : Absolute value = skip to leave above the heading.
- % If negative, then paragraph indent of text following
- % heading is suppressed.
- % AFTERSKIP : if positive, then skip to leave below heading,
- % else - skip to leave to right of run-in heading.
- % STYLE : commands to set style
- % If '*' missing, then increments the counter. If it is present, then
- % there should be no [ALTHEADING] argument. A sectioning command
- % is normally defined to \@startsection + its first six arguments.
-
- % A definition needs to set its number and title in
- % different sizes so it manipulates its argument before passing it on
- % to \@startsection.
-
- % These spacings are provisional only.
-
- \def\section{\@startsection {section}{1}{\z@}{3ex plus 1ex minus
- .2ex}{.1ex plus .1ex}{\Large\bf}}
- \def\clause{\@startsection{clause}{2}{\z@}{2ex plus .5ex minus
- .2ex}{.1ex plus .1ex}{\large\bf}}
- \def\definition#1{\@startsection{definition}{2}{\z@}{2ex plus .5ex minus
- .2ex}{-.5em plus -.1em minus -.1em}{\large\bf}
- {\protect{\normalsize\bf#1:\thinspace}}}
- \def\subclause{\@startsection{subclause}{3}{\z@}{2ex plus 1ex minus
- .2ex}{.1ex plus .1ex}{\normalsize\bf}}
- \def\subsubclause{\@startsection
- {subsubclause}{4}{\z@}{2ex plus 1ex minus .2ex}{.1ex plus .1ex}
- {\normalsize\bf}}
- \def\namelesssubsubclause{\@startsection{namelesssubsubclause}{4}{\z@}{
- 2ex plus 1ex minus .2ex}{-.5em plus -.1em minus -.1em}{\normalsize\bf}{}}
- \def\subsubsubclause{\@startsection
- {subsubsubclause}{5}{\parindent}{2ex plus 1ex minus
- .2ex}{.1ex plus .1ex}{\normalsize\bf}}
- \def\namelesssubsubsubclause{\@startsection{namelesssubsubsubclause}{5}{\z@}{
- 2ex plus 1ex minus .2ex}{-.5em plus -.1em minus -.1em}{\normalsize\bf}{}}
-
-
- % Default initializations of \...mark commands. (See below for their
- % use in defining page styles.
- %
-
- \def\sectionmark#1{} % Preloaded definitions
- \def\clausemark#1{}
- \def\definitionmark#1{}
- \def\subclausemark#1{}
- \def\subsubclausemark#1{}
- \def\namelesssubsubclausemark#1{}
- \def\subsubsubclausemark#1{}
- \def\namelesssubsubsubclausemark#1{}
-
- % The value of the counter secnumdepth gives the depth of the
- % highest-level sectioning command that is to produce section numbers.
- %
-
- \setcounter{secnumdepth}{5}
-
- % ANNEX
- %
- % The \annex command must do the following:
- % -- add an `Annexes' heading to the table of contents
- % -- reset the section and clause counters to zero
- % -- redefine the section counter to produce appendix numbers
- % -- redefine the \section command if appendix titles and headings are
- % to look different from section titles and headings.
-
- \def\annex{\par
- \addtocontents{toc}{\protect{\section*{Annexes}}}
- \setcounter{section}{0}
- \setcounter{clause}{0}
- \def\thesection{\Alph{section}}
- \def\section{\clearpage\@startsection {section}{1}{\z@}{3ex plus 1ex minus
- .2ex}{.1ex plus .1ex}{\Large\bf}}}
-
-
- % ****************************************
- % * LISTS *
- % ****************************************
- %
-
- % The following commands are used to set the default values for the list
- % environment's parameters. See the LaTeX manual for an explanation of
- % the meanings of the parameters. Defaults for the list environment are
- % set as follows. First, \rightmargin, \listparindent and \itemindent
- % are set to 0pt. Then, for a Kth level list, the command \@listK is
- % called, where 'K' denotes 'i', 'ii', ... , 'vi'. (I.e., \@listiii is
- % called for a third-level list.) By convention, \@listK should set
- % \leftmargin to \leftmarginK.
-
- \leftmargini 1em
- \leftmarginii 1em
- \leftmarginiii 1em
- \leftmarginiv 1em
- \leftmarginv 1em
- \leftmarginvi 1em
-
- \leftmargin\leftmargini
- \labelsep 1em
- \labelwidth 0pt
- \parsep 4pt plus 2pt minus 1pt
-
- \def\@listi{\leftmargin\leftmargini
- \itemindent\leftmargini}
-
- \def\@listii{\leftmargin\leftmarginii
- \itemindent\leftmarginii
- \topsep 4pt plus 2pt minus 1pt
- \parsep 2pt plus 1pt minus 1pt
- \itemsep \parsep}
-
- \def\@listiii{\leftmargin\leftmarginiii
- \itemindent\leftmarginiii
- \topsep 2pt plus 1pt minus 1pt
- \parsep \z@ \partopsep 1pt plus 0pt minus 1pt
- \itemsep \topsep}
-
- \def\@listiv{\leftmargin\leftmarginiv
- \itemindent\leftmarginiv}
-
- \def\@listv{\leftmargin\leftmarginv
- \itemindent\leftmarginv}
-
- \def\@listvi{\leftmargin\leftmarginvi
- \itemindent\leftmarginvi}
-
-
-
-
-
-